package cn.scw.project.separate.service;

import cn.scw.project.separate.domain.SaUser;
import org.apache.ibatis.annotations.Param;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface SaUserService {

    /**
     * 保存分账用户信息
     *
     * @param user 用户信息
     */
    Long save(SaUser user);

    /**
     * 保存分账用户信息
     *
     * @param user 用户信息
     */
    Long saveNew(SaUser user);


    /**
     * 逻辑删除分账用户
     *
     * @param id ID
     */
    void delete(Long id);

    /**
     * 批量删除
     *
     * @param id
     */
    void delete(Long[] id);

    /**
     * 物理删除分账账号
     *
     * @param id
     */
    void clear(Long id);

    /**
     * 分账用户列表
     *
     * @return
     */
    List<SaUser> list(Map<String, Object> params);

    /**
     * 分账用户详情
     *
     * @param id
     * @return
     */
    SaUser select(Long id);

    /**
     * 获取设备参与分账的用户信息
     *
     * @param facId
     * @return
     */
    List<SaUser> queryFacUser(String facId);

    /**
     * 根据openid 获取用户信息
     *
     * @param openid
     * @return
     */
    SaUser selectOpenId(String openid);
}
